package com.xiongda.service;

import com.xiongda.common.ServerResponse;
import com.xiongda.dto.UserDto;
import com.xiongda.pojo.User;

/**
 * 用户服务层接口
 * @author 缪琼
 */
public interface UserService {

    /**
     * 用户登录
     * @param userDto
     * @return
     */
    ServerResponse<User> login(UserDto userDto);

    /**
     * 用户注册
     * @param userDto
     * @return
     */
    ServerResponse<User> register(UserDto userDto);

    /**
     * 更新用户激活状态
     * @param code
     * @return
     */
    ServerResponse updateUserByCode(String code);

    /**
     * 检查用户名和邮箱
     * @param userDto
     * @return
     */
    ServerResponse checkUserName(UserDto userDto);

    /**
     * 通过用户名获取用户
     * @param userName
     * @return
     */
    ServerResponse getUserByUserName(String userName);

    /**
     * 修改密码
     * @param userDto
     * @return
     */
    ServerResponse editPassword(UserDto userDto);

    /**
     * 获取用户信息
     * @param id
     * @return
     */
    User getUser(Long id);
}
